package com.wusiwei.mapper;

import com.wusiwei.entity.ReceiptItem;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 收货单明细数据访问接口
 */
@Mapper
public interface ReceiptItemMapper {

//    /**
//     * 根据ID查询收货单明细
//     *
//     * @param id 明细ID
//     * @return 收货单明细
//     */
//    ReceiptItem findById(Long id);

    /**
     * 根据收货单ID查询明细
     *
     * @param receiptId 收货单ID
     * @return 收货单明细列表
     */
    List<ReceiptItem> findByReceiptId(Long receiptId);

//    /**
//     * 根据订单明细ID查询收货明细
//     *
//     * @param orderItemId 订单明细ID
//     * @return 收货单明细列表
//     */
//    List<ReceiptItem> findByOrderItemId(Long orderItemId);

//    /**
//     * 插入收货单明细
//     *
//     * @param receiptItem 收货单明细
//     * @return 影响行数
//     */
//    int insert(ReceiptItem receiptItem);

    /**
     * 批量插入收货单明细
     *
     * @param receiptItems 收货单明细列表
     * @return 影响行数
     */
    int batchInsert(List<ReceiptItem> receiptItems);

//    /**
//     * 更新收货单明细
//     *
//     * @param receiptItem 收货单明细
//     * @return 影响行数
//     */
//    int update(ReceiptItem receiptItem);

//    /**
//     * 逻辑删除收货单明细
//     *
//     * @param id 明细ID
//     * @return 影响行数
//     */
//    int deleteById(Long id);

    /**
     * 根据收货单ID逻辑删除明细
     *
     * @param receiptId 收货单ID
     * @return 影响行数
     */
    int deleteByReceiptId(Long receiptId);

//    /**
//     * 更新验收结果
//     *
//     * @param id               明细ID
//     * @param inspectionResult 验收结果
//     * @param inspectionRemark 验收备注
//     * @return 影响行数
//     */
//    int updateInspectionResult(@Param("id") Long id,
//                               @Param("inspectionResult") String inspectionResult,
//                               @Param("inspectionRemark") String inspectionRemark);

//    /**
//     * 计算收货单明细总金额
//     *
//     * @param receiptId 收货单ID
//     * @return 总金额
//     */
//    BigDecimal sumAmountByReceiptId(Long receiptId);
} 